package com.ruoyi.neo.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.springframework.data.neo4j.core.schema.GeneratedValue;
import org.springframework.data.neo4j.core.schema.Id;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Relationship;

/**
 * 零件三视图对象 part_view
 * 
 * @author ruoyi
 * @date 2025-03-16
 *
 */
@Node(labels = "PartView")
public class PartView extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 视图编号 */
    @Id
    private String viewNumber;

    /** 零件编号 */
    @Excel(name = "零件编号")
    private String partNumber;

    /** 视图类型（0前视图 1侧视图 2俯视图 3其他） */
    @Excel(name = "视图类型", readConverterExp = "0=前视图,1=侧视图,2=俯视图,3=其他")
    private String viewType;

    /** 视图图片URL */
    @Excel(name = "视图图片URL")
    private String viewImageUrl;

    /** 视图描述 */
    @Excel(name = "视图描述")
    private String description;

    @Relationship(type = "HAS_VIEW", direction = Relationship.Direction.INCOMING)
    private Part part;


    public void setPartNumber(String partNumber) 
    {
        this.partNumber = partNumber;
    }

    public String getPartNumber() 
    {
        return partNumber;
    }
    public void setViewType(String viewType) 
    {
        this.viewType = viewType;
    }

    public String getViewType() 
    {
        return viewType;
    }
    public void setViewImageUrl(String viewImageUrl) 
    {
        this.viewImageUrl = viewImageUrl;
    }

    public String getViewImageUrl() 
    {
        return viewImageUrl;
    }
    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("viewNumber", getViewNumber())
            .append("partNumber", getPartNumber())
            .append("viewType", getViewType())
            .append("viewImageUrl", getViewImageUrl())
            .append("description", getDescription())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }

    public String getViewNumber() {
        return viewNumber;
    }

    public void setViewNumber(String viewNumber) {
        this.viewNumber = viewNumber;
    }
}
